package com.hanserwei.community.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hanserwei.community.entity.po.MeterRecord;
import com.hanserwei.community.entity.request.meter.MeterRecordQueryRequest;
import com.hanserwei.community.entity.request.meter.MeterRecordSaveRequest;
import com.hanserwei.community.entity.vo.MeterRecordVO;

public interface MeterRecordService extends IService<MeterRecord> {

    Page<MeterRecordVO> pageMeterRecords(MeterRecordQueryRequest request);

    MeterRecordVO getMeterRecordDetail(Integer id);

    boolean createMeterRecord(MeterRecordSaveRequest request);

    boolean updateMeterRecord(Integer id, MeterRecordSaveRequest request);

    QueryWrapper<MeterRecord> buildQueryWrapper(MeterRecordQueryRequest request);
}
